Pipe inspection systems for examining the interior of pipes, conduits, and other cavities or voids are known in the art. In order to correctly diagnose a defect within the interior of pipes, conduits, and other voids, a video camera linked to a push cable is generally employed. In a typical configuration, a rugged camera head connected to a push cable is sent through a pipe, and the camera head transmits video signals along a transmission medium to view the scene on a remote monitoring system. As the camera head snakes its way through the pipe, the camera head may rotate. Consequently, the scene transmitted to the remote monitoring system follows the motion of the camera head, and the image cannot maintain a frame of reference, such as an up-down orientation. Thus, it is desirable to orient the video such that the displayed images more closely approximate a level, upright viewing orientation.
There are various mechanical, electrical, and digital techniques available to rotate images recorded during pipe inspection in a camera control unit. However, prior art self-leveling pipe inspection camera systems have deficiencies. For example, the conventional approach for digitally rotating an image is to apply a transformation of coordinates from one coordinate system to a second, rotated, coordinate system. More specifically, the vector of coordinates for each pixel is multiplied by a rotation matrix. These computationally intense processes consume substantial memory resources, which may cause the video to have unacceptable latency when viewing in real-time.
Current techniques for reducing the consumption of memory resources include cropping, which presents the viewer with a cropped image, as well as rescaling, which presents viewers with an image scaled to fit within the constraints of the viewing area, thereby losing resolution. These lossy processes may achieve the goal of higher speed image data transmission, but at the expense of the image quality and/or the field of view.